/* =============================================================================
 * PROJET           	: repartition
 * NOM DU FICHIER   	: boge_liu.c
 * OBJET            	: programme principal du projet
 * -----------------------------------------------------------------------------
 * DATE DE CREATION 	: 27/10/2009
 * AUTEUR           	: Sha LIU, Yves BOGE
 * ============================================================================= */

#include "optimisation.h"

int main (int argc, char* argv[]) {

	t_donnees_pb pb_init;
	t_donnees_pb* pb_cour;
	int res;
	char* fichier_donnees;
	bool trace = true;
	
	// chargement du probleme :
	if ( argc == 1 ) {
		fichier_donnees = malloc(sizeof(char) * strlen("Documents/donnees2.txt") + 1);
		fichier_donnees = "Documents/donnees2.txt";
	}
	else if ( argc == 2 ) {
		fichier_donnees = malloc(sizeof(char) * strlen(argv[1]) + 1);
		fichier_donnees = argv[1];
	}
	else {
		if (strcmp(argv[1], "-rep") == 0)
			trace = false;
		fichier_donnees = malloc(sizeof(char) * strlen(argv[2]) + 1);
		fichier_donnees = argv[2];
	}
	
	res = lire_fichier(fichier_donnees, &pb_init);
	
	// Si le fichier a pu etre charge :
	if ( res ) {
		if (trace)
			trace_init(&pb_init);
		pb_cour = copier_probleme(&pb_init);
		pb_cour = resolution(pb_cour, trace);
		//printf("resolution termine\n");
		ecrire_sol(&pb_init, pb_cour);
	}
	else
		printf( "le fichier n'a pas pu etre charge\n" );
	
	return EXIT_SUCCESS;
	
}
